package com.example.hms.util;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * WebMvcConfig 类用于配置 Spring MVC 的相关设置，如拦截器等。
 * 通过实现 WebMvcConfigurer 接口来自定义 Spring MVC 的配置。
 */
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    /**
     * 重写 addInterceptors 方法来添加自定义拦截器。
     * 拦截器可以在请求到达控制器之前或者之后执行一些操作，如权限验证、日志记录等。
     *
     * @param registry 拦截器注册表，用于添加和管理拦截器
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new TokenInter())
                .addPathPatterns("/**")
                .excludePathPatterns("/user/login")
                .excludePathPatterns("/user/logout");
    }
}
